1. Field of the Invention
This invention relates to an improved control system for a mass memory storage device. More particularly, the invention relates to a new and improved control system having a control unit of the type which is operably connected between a plurality of disc storage devices and a central processing unit (CPU). The novel control system is adapted to connect one of the plurality of disc storage devices and to the CPU when the transfer of information is imminent so that both the control unit and the CPU are occupied with the task of the transfer of information for a minimum amount of time.
2. Description of the Prior Art
Most programmed data processing systems usually require a relatively large external mass memory in addition to an internal main memory. The external mass memory is usually slower and more inacessible than the internal main memory; however, such mass memories are cheaper than high speed internal main memories. Disc storage devices offer one of the cheapest and most convenient forms of external non-destructive mass memory. One of the deficiencies with disc storage devices is that data records are recorded on a rotating disc which is only available to its read-write head once each revolution.
The average latency time required for a data record on a disc to reach a read-write head once the head is positioned over a given track is one-half revolution of the disc. If the disc storage device employs movable heads, the boom and arm supporting the head requires boom motion time. The total access time comprises latency time and boom motion time (when required). Average latency time for a disc storage device is far greater than the time to retrieve data from the main memory of the CPU. Lengthy latency time slows down the through-put or performance of the CPU.
Multiprogrammed CPU systems are capable of executing large numbers of programs of different types and operating on such programs during the same time period. Some of such programs deal with blocks of data, and other such programs may deal with individual data records. The number of programs available to the data system may be so large that portions of the program may have to be stored in the mass memory. Some programs in a multiprogrammed data processing system are more important than other programs. Similarly, some data in mass memory is more important to operating the programs than other data. The importance of the program and the individual data may or may not be related to the amount of time required to complete a given program. Heretofore, the importance of the program or data was not related to the amount of time required to locate a particular data record.
The need to reduce the access time of a rotating disc or drum has long been recognized, and some advance prior art systems have employed means for reducing the average access time of a memory device. One such representative prior art system generated a plurality of timed signals during each revolution of the magnetic disc and employed the signals to drive a sector counter. The output of the sector counter produced a count indicative of the sector which was under the read-write head. This sector count was compared with the contents of a register which contained the desired sector address, and upon coincidence-comparison, the control unit initiated a signal which resulted in a request for the CPU to transfer data.
U.S. Pat. No. 3,629,860 discloses a control unit in which the sector address is stored in a look-up table. When the CPU program of this system attempted to locate a data record in the disc storage device, the sector address associated with the date record was transferred to a sector register in the control unit, thus, tying up the control unit. In an alternative mode of operation suggested in this prior art system, the sector counter was scanned by the CPU to determine which data storage device had the least latency time, thus, tying up the control unit and the CPU. This prior art system also suggested that the sector counter may be used as a record address which changes at the time the sector counter changes count so that individual data records or bulk records may be written after the occurrence of the sector count. This use of the sector counter would be wasteful of space for individual records and could present operational difficulties due to variations in turn-around time.
The aforementioned prior art systems require that the CPU initially transfer cylinder and track address data to the control unit and at some later time transfer sector address data to the same control unit. In large systems, the sector address is obtained through a look-up table. Such prior art systems tie up the CPU during look-up, transfer or arithmetic computations.
Prior art systems which have employed sector counters have generated a coincidence signal at the time the sector count equaled the address in the sector register. The coincidence signal of such a system was processed as a request for the transfer of data. The prior art systems could easily create the request for transfer of data too late to allow for turn around time of the control unit and CPU, especially when the data record straddled a sector count.
Prior art multiprogrammed CPU systems did not include means for automatically queueing or prioritizing programs. Heretofore, an executive or master program would select a program and operate on it to the exclusion of other programs. The master or executive program could also select a subprogram which was capable of examining data, and as a result of the examination could select the program which was most important on the basis of the data examined. In other prior art systems, the individual disc storage devices or control units could be wired so that they would become operably connected to the CPU in a preselected order.
Prior art control units for disc storage devices have been effective to reduce the average latency time required to locate a data record to less than one half the time required for a disc to complete one revolution, but have not effectively reduced the time the control unit and the CPU are occupied with producing, modifying and transferring addresses related to locating data records prior to the transmission of data. Prior art control units have not been provided with programmable automatic priority control means.